home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / zunglq.z / zunglq
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. ZZZZUUUUNNNNGGGGLLLLQQQQ((((3333FFFF))))                                                          ZZZZUUUUNNNNGGGGLLLLQQQQ((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ZUNGLQ - generate an M-by-N complex matrix Q with orthonormal rows,
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      SUBROUTINE ZUNGLQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
  13.  
  14.          INTEGER        INFO, K, LDA, LWORK, M, N
  15.  
  16.          COMPLEX*16     A( LDA, * ), TAU( * ), WORK( LWORK )
  17.  
  18. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  19.      ZUNGLQ generates an M-by-N complex matrix Q with orthonormal rows, which
  20.      is defined as the first M rows of a product of K elementary reflectors of
  21.      order N
  22.  
  23.            Q  =  H(k)' . . . H(2)' H(1)'
  24.  
  25.      as returned by ZGELQF.
  26.  
  27.  
  28. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  29.      M       (input) INTEGER
  30.              The number of rows of the matrix Q. M >= 0.
  31.  
  32.      N       (input) INTEGER
  33.              The number of columns of the matrix Q. N >= M.
  34.  
  35.      K       (input) INTEGER
  36.              The number of elementary reflectors whose product defines the
  37.              matrix Q. M >= K >= 0.
  38.  
  39.      A       (input/output) COMPLEX*16 array, dimension (LDA,N)
  40.              On entry, the i-th row must contain the vector which defines the
  41.              elementary reflector H(i), for i = 1,2,...,k, as returned by
  42.              ZGELQF in the first k rows of its array argument A.  On exit, the
  43.              M-by-N matrix Q.
  44.  
  45.      LDA     (input) INTEGER
  46.              The first dimension of the array A. LDA >= max(1,M).
  47.  
  48.      TAU     (input) COMPLEX*16 array, dimension (K)
  49.              TAU(i) must contain the scalar factor of the elementary reflector
  50.              H(i), as returned by ZGELQF.
  51.  
  52.      WORK    (workspace/output) COMPLEX*16 array, dimension (LWORK)
  53.              On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  54.  
  55.      LWORK   (input) INTEGER
  56.              The dimension of the array WORK. LWORK >= max(1,M).  For optimum
  57.              performance LWORK >= M*NB, where NB is the optimal blocksize.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ZZZZUUUUNNNNGGGGLLLLQQQQ((((3333FFFF))))                                                          ZZZZUUUUNNNNGGGGLLLLQQQQ((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      INFO    (output) INTEGER
  75.              = 0:  successful exit;
  76.              < 0:  if INFO = -i, the i-th argument has an illegal value
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.